In modern processors, prefetching from memory allows data and instructions that may be needed in the future to be loaded in cache. In this way it may be possible to avoid the additional overhead associated with a later transfer if there otherwise would have been a cache miss if not for the prefetching. However, prefetching cache lines that are not needed tends to waste memory bandwidth and pollute caches.